package cn.topcodes.tcsf.app.service;

import cn.topcodes.tcsf.admin.commons.generic.IGenericService;
import cn.topcodes.tcsf.app.domain.entity.AppConfig;

import java.util.Collection;
import java.util.List;

/**
 * App配置项 服务
 * @author arjun
 * @date 2021-03-02 10:17
 */
public interface AppConfigService extends IGenericService<AppConfig> {

//    /**
//     * 创建配置项
//     * @param type
//     * @param name
//     * @param value
//     */
//    void createConfig(String type, String name, String value);
//
//    /**
//     * 更新配置项
//     * @param type
//     * @param name
//     * @param value
//     */
//    void updateConfig(String type, String name, String value);
//
//    /**
//     * 删除配置项
//     * @param type
//     * @param name
//     */
//    void deleteConfig(String type, String name);
//
//    /**
//     * 删除多个类型所有配置项
//     * @param type
//     */
//    void deleteConfig(String...type);
//
//    /**
//     * 根据类型和名称查找单个配置项
//     * @param type
//     * @param name
//     * @return
//     */
//    AppConfig findOneByTypeName(String type, String name);

    /**
     * 查找类型下所有配置项
     * @param type
     * @return
     */
    List<AppConfig> findAllByType(String type);

    /**
     * 查找多个类型下所有配置项
     * @param types
     * @return
     */
    List<AppConfig> findAllByTypes(Collection<String> types);
}
